<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8" />
  <title>Gunicorn - Python WSGI HTTP Server for UNIX</title>
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <link rel="stylesheet" type="text/css" href="css/style.css" />
  <link rel="shortcut icon" href="images/favicon.png" type="image/x-icon">
  <link rel="alternate"
  href="https://github.com/benoitc/gunicorn/commits/master.atom"
  type="application/atom+xml" title="Gunicorn commits">

</head>
<body>
  <div class="logo-wrapper">
    <div class="logo-div">
      <div class="latest">
        Latest version: <strong><a
            href="https://docs.gunicorn.org/en/stable/">23.0.0</a></strong>
      </div>

      <div class="logo"><img src="images/logo.jpg" ></div>
    </div>
  </div>
  <div class="banner-wrapper">
    <div class="banner">
      <div class="title"><img src="images/title.png"></div>
      <h1>Gunicorn 'Green Unicorn' is a Python WSGI HTTP Server for UNIX. It's a pre-fork worker model. The Gunicorn server is broadly compatible with various web frameworks, simply implemented, light on server resources, and fairly speedy.</h1>
      <div class="banner-button">
        <a href="https://github.com/benoitc/gunicorn" title="View source at github" class="greenbutton">View source</a>
        <a href="http://pypi.python.org/pypi/gunicorn/" title="Download from PyPi" class="redbutton">Download</a>
      </div>
    </div>
  </div>

  <div class="mid-wrapper">
    <div class="tabs">
      <ul class="tab-bar">
        <li class="active">
          <a href="#quickstart" title="Quickstart" class="gabout">
            <h2>Quickstart</h2>
            <p>Read the quickstart guide to get started using Gunicorn.</p>
          </a>
        </li>
        <li class="withborder">
          <a href="#deployment" title="Deployment" class="gdownloads">
            <h2>Deployment</h2>
            <p>Learn how to deploy the Gunicorn server.</p>
          </a>
        </li>
        <li class="withborder">
          <a href="#community" title="Community" class="gcommunity">
            <h2>Community</h2>
            <p>Get in touch with the community.</p>
          </a>
        </li>
        <li class="withborder">
          <a href="#docs" title="Documentation" class="gdocuments">
            <h2>Documentation</h2>
            <p>Read the documentation to learn more about Gunicorn.</p>
          </a>
        </li>
      </ul>
      <div class="clearall active"></div>

      <div class="tab-box active" data-tab="quickstart">
        <h1>Installation</h1>
        <p>
          Here's a quick rundown on how to get started with Gunicorn. For more details read the <a href="http://docs.gunicorn.org/en/stable/">documentation</a>.
        </p>
<pre>
  $ pip install gunicorn
  $ cat myapp.py
    def app(environ, start_response):
        data = b"Hello, World!\n"
        start_response("200 OK", [
            ("Content-Type", "text/plain"),
            ("Content-Length", str(len(data)))
        ])
        return iter([data])
  $ gunicorn -w 4 myapp:app
  [2014-09-10 10:22:28 +0000] [30869] [INFO] Listening at: http://127.0.0.1:8000 (30869)
  [2014-09-10 10:22:28 +0000] [30869] [INFO] Using worker: sync
  [2014-09-10 10:22:28 +0000] [30874] [INFO] Booting worker with pid: 30874
  [2014-09-10 10:22:28 +0000] [30875] [INFO] Booting worker with pid: 30875
  [2014-09-10 10:22:28 +0000] [30876] [INFO] Booting worker with pid: 30876
  [2014-09-10 10:22:28 +0000] [30877] [INFO] Booting worker with pid: 30877
</pre>
      </div>
      <div class="tab-box" data-tab="deployment">
        <h1>Deployment</h1>
        <p>
          Gunicorn is a WSGI HTTP server. It is best to use Gunicorn behind an HTTP proxy server. We strongly advise you to use <a href="http://www.nginx.org/">nginx</a>.
        </p>
        <p>Here's an example to help you get started with using nginx:</p>
<pre>
  server {
    listen 80;
    server_name example.org;
    access_log  /var/log/nginx/example.log;

    location / {
        proxy_pass http://127.0.0.1:8000;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
  }
</pre>
        <p>Nginx is set up as reverse proxy server to a Gunicorn server running on localhost port 8000.</p>
        <p>Read the full documentation at <a
          href="http://docs.gunicorn.org/en/latest/deploy.html">docs.gunicorn.org</a></p>
      </div>
      <div class="tab-box" data-tab="community">
        <h1>Project Management</h1>
        <p><strong>Gunicorn</strong> uses <a href="https://github.com/benoitc/gunicorn/projects">GitHub for the project management</a>. GitHub issues are used for 3 different purposes:</p>
        <ul>
          <li><a href="https://github.com/benoitc/gunicorn/projects/2">Bug tracker</a></li>
          <li><a href="https://github.com/benoitc/gunicorn/projects/4">Forum</a></li>
          <li><a href="https://github.com/benoitc/gunicorn/projects/3">Mailing list</a>
        </ul>
        <p>Project maintenance guidelines are available on the <a href="https://github.com/benoitc/gunicorn/wiki/Project-management">wiki</a></p>
        
        <h1>IRC</h1>
        <p>The Gunicorn channel is on the <a href="https://libera.chat/">Libera Chat</a> IRC
          network. You can chat with the community on the <a href="https://web.libera.chat/?channels=#gunicorn">#gunicorn channel</a>.</p>

        <h1>Issue Tracking</h1>
        <p>Bug reports, enhancement requests and tasks generally go in the <a  href="http://github.com/benoitc/gunicorn/issues">Github
          issue tracker</a>.</p>

        <h1>Security Issues</h1>
        <p>The security mailing list is a place to report security issues. Only
        developers are subscribed to it. To post a message to the list use the
        address <a  href="mailto:security&#64;gunicorn.org">security&#64;gunicorn.org</a></p>

      </div>
      <div class="tab-box" data-tab="docs">
        <h1>Documentation</h1>
        <p>You can read more comprehensive documentation at <a href="http://docs.gunicorn.org">docs.gunicorn.org</a>.</p>
        <p>The contents are:</p>
        <ul>
          <li><a href="http://docs.gunicorn.org/en/latest/install.html">Installation</a></li>
          <li><a
            href="http://docs.gunicorn.org/en/latest/run.html">Running
            Gunicorn</a></li>
          <li><a
            href="http://docs.gunicorn.org/en/latest/configure.html">Configuration
            Overview</a></li>
          <li><a href="http://docs.gunicorn.org/en/latest/deploy.html">Deploying Gunicorn</a></li>
          <li><a href="http://docs.gunicorn.org/en/latest/design.html">Design</a></li>
          <li><a href="http://docs.gunicorn.org/en/latest/faq.html">FAQ</a></li>
          <li><a href="http://docs.gunicorn.org/en/latest/news.html">Changelog</a></li>
      </div>
    </div>
  </div>

  <!-- <div class="user-wrapper">
    <div class="users">
      <div class="left-details">
        <h3>Who is using</h3>
        <h2>Gunicorn</h2>
      </div>
      <div class="company-logos">
        <a href="#"><img src="images/user1.jpg"></a>
        <a href="#"><img src="images/user1.jpg"></a>
        <a href="#"><img src="images/user1.jpg"></a>
        <a href="#"><img src="images/user1.jpg"></a>
        <a href="#"><img src="images/user1.jpg"></a>
        <a href="#"><img src="images/user1.jpg"></a>
      </div>
      <div class="clearall"></div>
    </div>
  </div> -->

  <div class="footer">
    <div class="footer-wp">
      This open sourced site is hosted on GitHub. <br>
      <a href="http://github.com/benoitc/gunicorn/issues">Patches, suggestions, and comments are welcome.</a>
    </div>
  </div>

  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
  <script src="js/main.js"></script>
</body>
</html>
